Dynamic real-time quality management of packetized communications in a network environment

ABSTRACT

The present invention provides a dynamic real-time quality management of packetized communications in a network environment. Packetized communications are monitored by and exchanged between wireless Access Points (APs) and wireless terminals or by quality monitoring modules located within network segments or at network vertices. The processing unit analyzes the packetized communications to identify communication signatures associated with the packetized communications. The processor then uses these signatures to identify network impediments to the exchange of the packetized communications. These impediments may take the form of coding problems in which case an appropriate coding scheme is employed by the programmable COder/DECoder (CODEC) to convert incoming packetized communications to incoming user communications, and outgoing user communications to outgoing packetized communications. These impediments may also take the form of communication problems along and between the various network segments. In these cases, the processor may choose a more appropriate communication pathway with which to route the packetized communications.

RELATED APPLICATIONS

This application claims priority of U.S. Provisional Application No. 60/472,647 filed May 22, 2003 entitled, “Method for Handoff of a Telephone Call between Two Different Wireless Networks” by Rick Bye, and is incorporated herein by reference in its entirety.

TECHNICAL FIELD OF THE INVENTION

The present invention relates generally to communication networks supporting multimedia packetized communications, and more particularly to a system for managing the quality of service provided by a wireless local area network.

BACKGROUND OF THE INVENTION

Communication technologies that network electronic devices are well known. Examples include wired packet data networks, wireless packet data networks, wired telephone networks, and satellite communication networks, among other networks. These communication networks typically include a network infrastructure that services a plurality of client devices. The Public Switched Telephone Network (PSTN) is probably the best-known communication network and has been in existence for many years. The Internet, another well-known example of a communication network, has also been in existence for a number of years. Communication networks like these enable client devices to communicate with one another on a global basis.

Local Area Networks (wired LANs), e.g., Ethernets, support communications between networked computers and other devices within a serviced area. These wired LANs often link serviced devices to Wide Area Networks and the Internet. Each of these networks is generally considered a “wired” network, even though some of these networks, e.g., the PSTN, may include some transmission paths that are serviced by wireless links.

Wireless networks have come into existence more recently. Examples include cellular telephone networks, wireless LANs (WLANs), and satellite communication networks. Common forms of WLANs such as IEEE 802.11(a) networks, IEEE 802.11(b) networks, and IEEE 802.11(g) networks are referred to jointly as “IEEE 802.11 networks.” In a typical IEEE 802.11 network, a wired backbone couples to a plurality of Wireless Access Points (APs), each of which supports wireless communications with computers and other wireless terminals that include compatible wireless interfaces within a serviced area. The wired backbone couples the APs of the IEEE 802.11 network to other networks, both wired and wireless, and allows serviced wireless terminals to communicate with devices external to the IEEE 802.11 network. Devices that operate consistently with an IEEE 802.11 protocol may also support adhoc networking in which wireless terminals communicates directly to one another without the presence of an AP.

Currently, Wireless Local Area Networks (WLANs) service a wide variety of data communications, typically relating to non real-time requirements. As the bandwidth delivered on the wireless links serviced by the WLANs increases, additional data communications may also be delivered, e.g., Voice Over Internet Protocol (VOIP), video conferencing, multi-media streaming, etc. However, when the WLAN supports many data transactions, the communications requiring continual throughput such as voice and multimedia communications may not be sufficiently serviced. The result of this shortcoming is reduced voice and video image quality, disconnection of the serviced communication, etc.

The shortcomings of the WLAN may be at the APs that service the wireless links within the WLAN. Each WLAN supports only a maximum throughput, e.g., 11 MBPS for IEEE 802.11b APs and 54 MBPS for 802.11a and 802.11g APs. When a particular AP cannot service all of its client devices, latency in the communications will increase. Because the AP cannot typically assign priority to its serviced communications, some or all of the serviced communications are adversely affected.

The performance of the WLAN may also be affected by the switches, routers, nodes or other elements in the backbone network of the WLAN and/or gateways that couple the WLAN to a Wide Area Network (WAN), to the Internet, to the Public Switched Telephone Network (PSTN) or to another servicing network. When these devices become overloaded, the WLAN serviced communications are also affected. Additionally, traffic within individual network segments may adversely impact communications.

WLANs often serve as terminating networks for voice communications, multimedia communications, etc. In some operations, the WLANs perform adequately but a network that couples the WLANs does not. An example of such an installation is when two offices of a major corporation each have WLAN service and a WAN couples the WLANs. In order to reduce telephony costs, voice traffic is routed across the WAN. When voice quality suffers, the WLAN administrators most likely identify the WLAN components as the problem even though the WAN itself may be the bottleneck. This troubleshooting most often occurs when reported by a user after the fact. By that time, the WAN problem may have been remedied and the system administrator can offer no solution. Such is also the case when the APs or other WLAN components are temporarily overloaded.

Thus, a need exists for intelligent systems and components that can identify network or pathway problems in real-time and effect real-time solutions. These solutions may involve dynamically altering coding schemes, network pathways or dynamically assigning priorities to network communications.

SUMMARY OF THE INVENTION

This disclosure provides a system and method to service real-time audio and/or visual communications in a network environment that are negatively impacted by packet delay or packet losses, such as Voice over Internet Protocol (VoIP) or wireless terminals that transmit and receive communications in a digital form having discrete packets. More specifically, the present invention provides a dynamic real-time quality management of packetized communications in a network environment.

Packetized communications are monitored by and exchanged between wireless Access Points (APs) and wireless terminals or a wired terminal, such as a VoIP telephone, and a servicing network. Alternatively, the packetized communications are relayed by quality monitoring modules located within network segments or at network vertices. The processing unit analyzes the packetized communications to identify communication signatures associated with the packetized communications. The processor then uses these signatures to identify network impediments to the exchange of the packetized communications. These impediments may take the form of coding problems in which case an appropriate coding scheme is selected and implemented. Alternatively, the communication signatures may indicate network (traffic) or hardware problems within specific segments of the communication pathway. In this case, traffic is prioritized or rerouted.

One embodiment provides an intelligent Wireless Local Area Network (WLAN) Access Point (AP). A second embodiment provides an intelligent VoIP network interface. While, a third embodiment provides an intelligent quality-monitoring module. In the instance of a WLAN AP or intelligent VoIP network interface, the WLAN AP or intelligent VoIP network interface performs the functions of the quality-monitoring module. A wireless interface exchanges packetized communications with wireless terminals on the WLAN. A processing unit couples to the wireless interface and to the WLAN's backbone network interface, and monitors the exchange of communications serviced by the WLAN AP. The processing unit identifies the communication signature for the packetized communications. Then the processing unit determines, based upon the corresponding communication signature, when the packetized communications are real-time communications. Communications identified as real-time communications are assigned a predetermined service level. The service level assigned to non-real-time communications may be lower than that of the real-time communications.

When the real-time communications cannot be provided the predetermined service level, the processor may direct the real-time communications to be rerouted via another servicing network. Alternatively, the processor may direct that the real-time communication be prioritized over the non-real-time communications.

Each packetized communication has a pair of signatures, a receive signature corresponding to communications received from a corresponding wireless terminal via the wireless interface and a transmit signature corresponding to communications received via the WLAN backbone interface and intended for the corresponding wireless terminal. The receive signature is primarily employed to determine whether the packetized communication is a real-time communication. Problems in this signature typically indicate problems with wireless link of AP.

The transmit signature usually indicates problems (network impediments) within other portions of communication path. Such network impediments may result in non-uniformity of receipt of the packetized communications from a near-end wireless terminal. This instance indicates problems in the wireless link. Non-uniformity or non-linearity of receipt of the packetized communications from a far end terminal indicates problems along the various network pathways between the AP and the far-end terminal.

Another embodiment takes the form of a method of servicing real-time communications in a network environment. A WLAN AP receives outgoing user communications from a wireless terminal and incoming user communications for the wireless terminal from a WLAN backbone network interfaced with the AP. These communications are in the form of packetized communications coded according to a coding scheme with a programmable COder/DECoder (CODEC). The programmable CODEC converts incoming user communications from packetized communications and outgoing user communications to packetized communications according to the selected coding scheme.

Packetized communications are exchanged between the servicing AP, the WLAN terminal, and the WLAN backbone network; the VoIP terminal, intelligent VoIP network interface and backbone network; or other network elements known to those skilled in the art, at a communication quality level. These communications are monitored to determine the communication quality level delivered between the servicing AP, the WLAN terminal, the WLAN backbone network, and the far-end terminal. The communications quality can be monitored within switches, routers, handsets, nodes, access points or other elements within the network infrastructure known to those skilled in the art. Monitoring the packetized communications from end-to-end supports the management of the coding scheme and routing of the packetized communications. The CODEC or communication pathway may be revised to improve service by selecting a new coding schemes based upon the communication quality level delivered or by selecting a new pathway. This communication quality level depends on the jitter experienced by the communications, the number and frequency of lost packets, the arrival or transmission rate of the packetized communications, and other such factors known to those skilled in the art.

By monitoring the packetized communications from end-to-end, the method can intelligently manage the selected coding scheme and routing of the packetized communications. For example, in one instance, the processor communicates with a far-end terminal to identify an appropriate coding scheme. These coding schemes may include, but are not limited to audio and/or video coding scheme such as Huffman encoding, ITU-T G.711, u-law, A-law, CCITT G.721, CCITT G.723, ITU-T G.726, ITU-T G.723.1, ITU-T G.723.1A, ITU-T G.729, ITU-T G.729A, ITU-T G.729AB, ITU-T G.729E, ITU-T G.728, ITU-T G.722, ITU-T G.722.1, ITU-T G.722.2, GSM-EFR, GSM AMR, IMA/DVI ADPCM, Microsoft ADPCM, LPC-10E, CELP GSM 06.10, shorten, Real Audio, MPEG, ACE and MACE.

In another instance, real or emulated jitter buffers, at any point in the communication pathway, monitor latency. This latency is used to determine the communication quality level between the AP and WLAN terminal, VoIP terminal and intelligent VoIP network interface, or along any network segment. Additionally, the communication quality level delivered between the WLAN terminal and the far-end terminal at any point in the network may also be determined.

This information allows the processor to select the route the communications take by choosing which network segments are used to route the communications or which AP is servicing the communication. In the case of the later, the APs are queried to determine the expected service quality level from each AP. Then, the WLAN terminal registers with a new servicing AP when the expected service quality level to be provided by the new servicing AP exceeds the expected service quality level provided by the servicing AP by a predetermined service quality level.

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of the present invention and the advantages thereof, reference is now made to the following description taken in conjunction with the accompanying drawings in which like reference numerals indicate like features and wherein:

FIGS. 1A and 1B depict communication pathways between wireless terminals and far end terminals;

FIG. 2 provides a block diagram that details the functions of the wireless terminal of FIGS. 1A and 1B;

FIG. 3 depicts an embodiment where an individual wireless terminal selects a communication pathway, selects a wireless link to an access point providing the highest level of service;

FIGS. 4A-4D provide block diagrams depicting the functions of various embodiments of wireless terminals;

FIG. 5A depicts a flow chart detailing the processes associated with selecting the appropriate coding scheme for outgoing user communications;

FIG. 5B depicts the selection of a coding scheme associated with incoming communications at the wireless terminal;

FIG. 5C depicts a process by which ingoing and outgoing communications are received and the coding scheme and communication pathway are monitored and evaluated for potential changes which would improve the measured and perceived quality of the serviced communication;

FIGS. 6A and 6B depict an embodiment wherein the decision making process may be executed by a processor within either an access point or a quality monitoring module;

FIG. 7A depicts the internal functions of a wireless AP having the ability to monitor and make quality decisions on the exchange of packetized communications through the wireless AP;

FIG. 7B depicts a quality-monitoring module located within the network. The module is capable of monitoring, evaluating and acting on information contained within the communication signatures of packetized communications passing through the quality monitoring module;

FIG. 8A provides an ideal communication signature of real-time packetized communications;

FIG. 8B provides one example of a non-real-time data communication involving bursts of data;

FIGS. 8C and 8D depict real communication signatures wherein packets of data are dropped;

FIGS. 9A and 9B illustrates the perceived and measured quality level impacts of the dropped packets in FIGS. 8C and 8D;

FIG. 10 depicts that packets are typically lost in bursts;

FIG. 11A provides an ideal communication signature wherein a real-time communication is received in packet sequence order;

FIG. 11B depicts a real communication signature wherein packetized communications are dropped via the wireless link between the wireless terminal and the access point;

FIG. 12A depicts a real communication signature wherein packetized communications are dropped within the network communication pathway;

FIG. 12B depicts a real communication signature wherein packets are received out of order from the network; and

FIGS. 13A and 13B depict process flows associated with quality monitoring.

DETAILED DESCRIPTION OF THE INVENTION

Preferred embodiments of the present invention are illustrated in the figures, like numerals being used to refer to like and corresponding parts of the various drawings.

FIG. 1A provides a diagram illustrating a wireless terminal 10 wirelessly coupled to WLAN 12 through AP 14. FIG. 2 further details wireless terminal 10. Processing unit 16 within wireless terminal 10 couples to and directs the functions of wireless interface 18 that communicatively couples to AP 14. Additionally, processing unit 16 couples to and directs programmable COder/DECoder (CODEC) 20 to convert user information or communications received at user interface 22 into packetized communications. User interface 22 may take the form of a microphone 25, camera 26, or other like device to receive audio and/or visual input from a user. Additionally, the user interface 22 may include a display 28, speaker 30, or other like device to present audio and/or visual information to the user. Packetized communications 24 are exchanged between wireless terminal 10 and AP 14.

As shown in FIG. 1A, AP 14 broadcasts within WLAN 12 and couples to backbone network 15. As shown, backbone network 15 couples to a wide area network (WAN) 32 that in turn relays the packetized communications to far-end terminal 34. In this first instance, far-end terminal 34 is serviced by a remote wireless local area backbone network 40 having AP 42. It should be noted that the far-end terminal 34 need not be limited to a wireless terminal. For example, a wire-based telephone such as that illustrated in FIG. 1B may act as the far-end terminal. In this example, backbone network 15 couples to the public switch telephone network (PSTN) 36 via a private box exchange (PBX) 38 and delivers audio communications to a far-end terminal 34.

Returning to wireless terminal 10 of FIG. 2, processing unit 16 monitors the packetized communications 24 exchanged between wireless terminal 10 and AP 14 in order to determine a communication quality level delivered by the wireless link that couples wireless terminal 10 to AP 14. Once the communication quality level delivered by wireless link 40 has been determined, processing unit 16 specifies the coding scheme to be employed by CODEC 20 to convert user communications into packetized communications 24. Additionally, processing unit 16 may communicate with far-end terminal 34 to determine the overall delivered communication quality level along the entire communication pathway. Then processing unit 16 can select the coding scheme based on the overall delivered communication quality level.

Some example coding schemes used in audio or video coding include Huffman encoding, ITU-T G.711, u-law, A-law, CCITT G.721, CCITT G.723, ITU-T G.726, ITU-T G.723.1, ITU-T G.723.1A, ITU-T G.729, ITU-T G.729A, ITU-T G.729AB, ITU-T G.729E, ITU-T G.728, ITU-T G.722, ITU-T G.722.1, ITU-T G.722.2, GSM-EFR, GSM AMR, IMA/DVI ADPCM, Microsoft ADPCM, LPC-10E, CELP GSM 06.10, shorten, Real Audio, MPEG, ACE and MACE, as well as others known to those skilled in the art.

Wireless terminal 10 receives packetized communications 24 wirelessly via antenna 52. Wireless interface 18 exchanges the incoming communications with jitter buffer 54. Processing unit 16 monitors jitter buffer 54 to determine its latency. This information may be used to determine the communication quality level delivered by wireless link 40. Based on the measurement of the communication quality level delivered, processing unit 16 may change the selected coding scheme used by CODEC 20 to convert user communications received to and from packetized communications.

Processing unit 16 may also monitor various signal pathways in its decision-making process. FIG. 3 depicts a situation wherein wireless terminal 10 has access to APs 14A, 14B and 14C that each couple to wireless local area backbone network 15. This allows processing unit 16 to choose its servicing AP based upon the expected service quality level supplied by individual APs 14A, 14B and 14C. In one instance, this process involves monitoring a number of APs by querying each available AP to determine the service quality level delivered by each individual AP. Wireless terminal 10 then chooses a new AP when the service quality level provided by the new servicing AP exceeds the service level provided by the current servicing AP by a predetermined service level.

FIGS. 4A-4D provide block diagrams illustrating the typical components of various wireless terminals. FIG. 4A depicts wireless terminal 400 as having only a short-range digital radio WLAN RF unit 404A that supports Bluetooth® or like wireless communications with the WLAN. FIG. 4B includes a cellular RF unit 404B that supports wireless communications with the cellular network. FIG. 4C includes a WLAN RF unit 404A and satellite RF unit 404C. FIG. 4D includes WLAN RF unit 404A, cellular RF unit 404B, and satellite RF unit 404C. RF units, 404A, 404B and 404C couple to antennas 402A, 402B and 402C respectively. These antennas 402A, 402B, and 402C may be located internal or external to the case of the wireless terminal 400. Further, in some embodiments, a single RF unit and/or a single antenna may support communications with both the WLAN and the cellular network. Processor 406 may be an Application Specific Integrated Circuit (ASIC) or another type of processor capable of operating the wireless terminal 400 according to this disclosure. Memory 408 includes both static and dynamic components, e.g., DRAM, SRAM, ROM, EEPROM, etc. In some embodiments, the memory 408 may be partially or fully contained upon an ASIC that also includes the processor 406. A user interface 410 includes a display, indicators, a keyboard, a speaker, a microphone, and/or a data interface, and may include other user interface components known to those still in the art. RF interfaces 404A, 404B, and 404C, processor 406, memory 408, and user interface 410 couple via one or more communication buses/links 416. Battery 412 or power port 418 couples to and powers RF interfaces, processor, memory and the user interface.

FIG. 5A provides a flowchart that depicts the servicing of real-time communications through a wireless terminal. At Step 500, outgoing communications are received at the user interface of the wireless terminal. These user communications may take the form of either audio or visual communications. An initial coding scheme, selected at Step 502, is utilized to code outgoing communications into packetized communications at step 504. FIG. 5B depicts incoming communications and utilizes the coding scheme to convert the incoming packetized communications to a format more readily used by the user. Outgoing packetized communications are exchanged between the wireless terminal and servicing AP at a given packetized rate in Step 506. This exchange is monitored in Step 508 to determine the communication quality level supported between the AP and the wireless terminal. By monitoring the exchange of packetized communications between the AP and the wireless terminal, the maximum delivered communication rate between the AP and the wireless terminal may then be used at decision point 510 to determine if the measured or perceived service can be improved by selecting a new coding scheme. If an improvement can be effected, a new CODEC is selected at step 512 and used in step 504 to convert new user communications into packetized communications. Otherwise, the processor continues to monitor the exchange of packetized communications in step 508.

FIG. 5B provides a flow chart illustrating the processes associated with receiving incoming packetized communications at the wireless terminal via the AP. At step 520, incoming packetized communications from the network are received at the wireless terminal. The processor identifies the coding scheme associated with these packetized communications in step 522. These communications are converted into user communications at step 524 and provided to the user through an interface at step 526. Simultaneously, the device monitors the communication quality level between the wireless terminal and the AP, and potentially the far-end terminal in step 528.

During the monitoring, a continuous evaluation is made as to whether or not the measured or perceived service can be improved with an alternative coding scheme at decision point 530. If it cannot, monitoring continues at step 528. Otherwise, a new coding scheme is selected in step 532, and implemented with the far-end terminal in step 534. New communications received should then be coded in accordance with the selected coding scheme as the process begins again at step 520.

FIG. 5C illustrates the receipt of incoming and outgoing communications at a user interface in step 550. An initial coding scheme, selected at step 552, is employed in step 554 to translate between user communications and packetized communications. Packetized communications are exchanged between the wireless terminal and the APs at step 556. As previously stated, the exchange process is monitored to determine the delivered communication quality level between the wireless terminal and APs in step 558. At decision point 560, a determination is made as to whether or not a need exists to revise the CODEC. The revised CODEC is selected and implemented in steps 562 and 564 respectively. Otherwise, the processor continues to monitor the exchange of packetized communications.

The monitoring process may also evaluate the communication pathways used to exchange packetized communications between the wireless terminal and the far-end terminal in step 566. Alternatively, communications between both end points may determine the appropriate CODEC or communication pathway. The process answers this question at decision point 568 and implements changes at step 570 or continues to evaluate at step 566.

In this embodiment, the overall communication quality level delivered across the entire communication path maybe evaluated. The decision to revise the selected CODEC at the above decision points now may consider the overall communication quality level and/or network/hardware considerations. Additionally, communications between the wireless terminal and the far-end terminal may identify a CODEC supported by both the far-end terminal and wireless terminal.

The process of monitoring packetized communications between end points may include monitoring the latency of packetized communications within the jitter buffer within the wireless terminal or VoIP terminal. As will be discussed later, this process may also be repeated or emulated at the AP or various nodes within the communication pathways that link the wireless terminal to the far-end terminal.

FIGS. 6A and 6B detail embodiments where the processing and decision-making process does not need to occur within wireless terminal 10. Here, wireless terminal 10 is wirelessly linked to AP 600. AP 600 services WLAN 12. One embodiment of AP 600 is further detailed in FIG. 7A.

In FIG. 7A, a wireless connection links wireless terminal 10 to antenna 618 and wireless interface 620 of AP 600. Processor 622 monitors and directs wireless interface 620, jitter buffer 624, and network interface 628. Processor 622 identifies and examines the communication signatures of packetized communication from wireless terminal 10 to determine if the communication is a real-time communication or non-real-time communication. A priority based on the communications real-time requirements is assigned for the serviced communication. Additionally, processor 622 evaluates the coding scheme and communication pathways used between wireless terminal 10 and the intended far-end terminal. Processor 622 determines how the communication should be routed and assigns a coding scheme and communication pathway that provides a predetermined level of service for the real-time communication. Furthermore, processor 622 may communicate with wireless terminal 10 in order to direct which coding scheme is to be used by the programmable CODEC, with the terminals.

In one example, processor 622 may examine the packetized communications exchanged between wireless terminal 10 and wireless interface 620 to determine the communication quality level delivered by the wireless link. When the wireless link is limiting, processor 622 may employ a coding scheme based on the communication quality level delivered by the wireless link. Additionally, by examining jitter buffer 624, processor 622 determines the latency associated with these buffers and assigns an appropriate coding scheme based on that latency. Processor 622 also interfaces with network interface 628 to direct the exchange of packetized communications between AP 600 and the backbone network or other network components in the communication pathway between wireless terminal 10 and the destination terminal.

These same processing functions may be achieved with a quality-monitoring module 602 further detailed in FIG. 7B. If the WLAN AP that the wireless terminal communicates with does not have the ability to monitor and evaluate packetized communications, these functions may be achieved by quality monitoring module 602. Additionally, these modules, when located at nodes within the pathway, may supplement the functions of APs having these abilities.

FIG. 7B shows that network communications maybe received at network interface 628A via port 630A. As previously stated, the network interface couples to processor 622 and jitter buffer 624. The communications then pass from network interface 628B and ports 630B to the other segments in the network.

Returning to FIG. 6A, it should be further noted that quality-monitoring modules 602 might be located within any network segment or at any network vertices such as those between backbone network 604 and WAN 606, as well as backbone network 608 and WAN 606. FIG. 6A shows that wireless terminal 10 communicates with far-end terminal 614 along the communication pathway shown. It should be understood that the monitoring modules are optional as AP 600, as configured in FIG. 7A, has the ability to process and evaluate the packetized communications exchanged between the network and wireless terminal 10.

FIG. 6B includes a bypass network such as PSTN, cellular, satellite, or other like network known to those skilled in the art. In this instance, quality-monitoring modules 602 may direct that if the primary communication pathways are unable to support the real-time communications between wireless terminal 10 and far-end terminal 614, bypass network such as those identified above may be used in favor of WAN 606A. Quality monitoring modules 602, in addition to evaluating communication quality levels delivered by the network, and the coding schemes employed, may further direct that non-real-time communications receive a lower priority or be temporarily stored in a buffer, or be delayed to support real-time communications.

One process accomplished by processor 622 in either AP 600 or quality monitoring module 602 is to determine whether or not the communications received from wireless terminal 10 are above or below a predetermined communication quality level threshold. The determination as to whether or not the communications are real-time communications or non-real-time communications may be determined by the protocols associated with the communications. For example, RTP protocols may identify real-time communications. FIG. 8A provides an example of an ideal packetized communication signature associated with a real-time communication from the wireless terminal. FIG. 8B depicts one possible signature of data communications that contain large amounts of data in relatively small bursts 804. Thus, the processor may also evaluate these communication signatures to determine which communications are real-time communications and to assign a predetermined level of service to those real-time communications. This evaluation of the communication signature is important where non-real-time protocols are used to convey real-time-communications.

FIGS. 8C and 8D show real-time communications with some data loss. Losses of individual packets of packetized communications impact the quality that the user perceives at the wireless terminal. It is important to maintain a perceived level of quality for the end user. This results in subscriber retention and increased user satisfaction. Ideally, VoIP systems should approach or exceed the quality of traditional telephony systems.

FIGS. 9A and 9B depict the effects of the dropped packets in FIG. 8C and 8D on the user's perceived quality. FIG. 9A shows that packet sequence 2 is lost as indicated by the gap L1. Gap L2 indicates the loss of packet sequence 7. These losses result in a reduced overall quality. Line 650 indicates the measured communication quality while dotted line 652 indicates the user's perceived communication quality. Line 650 depicts the measured communications quality as varying between a high quality and a low quality. Somewhere in between is a minimum average service to be maintained in order to ensure end user satisfaction. FIG. 9B depicts an instance when the same number of packetized communications is lost. However the packets lost are consecutive or form a burst at gap L1. This loss has a much more pronounced effect on the user's perceived quality of the communications than the small non-burst losses seen in FIG. 9A. FIG. 9B depicts a large gap wherein the perceived quality 652 dropped below the minimum service level for the communications. The fact that lost packets typically occur in bursts is indicated by the data represented in FIG. 10 wherein consecutive lost packets versus packet sequence number are provided. Spikes 660 indicate large losses of data. These typically are large consecutive losses of packetized communications.

The time that it takes for the perceived quality of the communications to rise above a minimum acceptable level is a function of the recovery from the loss of data, and the coding scheme used. Some coding schemes may more quickly compensate for recently lost packets. FIG. 11A depicts an ideal communication signature between a wireless terminal and an AP wherein a real-time communication having a series of packetized communications 24 are received in the proper packet sequence order and contain approximately the same amount of information. In contrast, FIG. 11B depicts one example of a real communication signature between the wireless terminal and the AP wherein some packetized communications 24 are dropped in packet sequence order. Thus, the quality monitor for the signatures depicted in FIGS. 11A and 11B may choose different coding schemes. FIG. 11A does not require a rapid recovery from dropped packets. However, FIG 11B requires the processors to select the scheme that provides the highest level of perceived quality and minimizes the effect of dropped packets. Additionally, the quality monitor may seek to service a wireless terminal with an alternative AP in order to avoid dropped packetized communications if a second AP is available to provide a higher level of service.

Network communications received from the far end terminal by the quality monitor should be received in packet sequence order and in a timely fashion. However, FIG. 12A provides the communication signature of packetized communications received from another segment in the network when packets are dropped. FIG. 12B depicts a communication signature wherein packets are received out of packet sequence order. Both instances may affect the perceived quality of the communication; the quality monitor may evaluate these communication signatures and direct an appropriate course of action. For example, in FIG. 12A, where packetized communications 24 that correspond to packet sequence nos. 2 and 7 are dropped in order, the quality monitor may elect a coding scheme better suited to maintain a high level of perceived quality when occasional packetized communications 24 are dropped. Additionally, when packetized communications 24 contain routing information, a determination can be made as to the network segment at which the packetized communications corresponding to the dropped packet sequence numbers. Then, the dropping network segment may be removed if possible from the communication pathway. In an instance where this is not possible, the quality monitor may direct an alternative communication pathway such as that provided by bypass network 606B of FIG. 6B. 100701 FIG. 12B indicates that while no packetized communications 24 were dropped, latency problems caused the packetized communications to be received out of sequence. As shown here, the packetized communications corresponding to packet sequence nos. 7, 6, 5, and 2 were received out of order. In certain cases, these packets will be discarded. These packetized communications are analyzed to determine the root cause of their delay and the network impediment, which may be removed, if possible, or a coding scheme revised to handle packetized communications received out of order while still allowing the perceived quality of the communication to remain high. Alternatively, a bypass network may be utilized if reconfiguring the communication pathway and revising the coding scheme does not provide the desired level of service.

FIG. 13A provides a process flow by which the quality monitors associated with either the APs or quality-monitoring modules within the network are able to receive outgoing communications at the quality monitor (processor) in step 700. The quality monitor determines, based on the communication signature associated with the outgoing communications, whether or not the communication is a real-time communication in step 702. In which case, real-time communications are prioritized at step 704 and non-real-time communications may be delayed dependent upon the bandwidth requirement of current communications. Then, a coding scheme consistent with the communication signature or communication pathway consistent with the communication signature may be selected at step 706. The process continually repeats for ongoing communications in order to ensure that the highest possible levels of communications are provided to the end user.

FIG. 13B also provides a process flow wherein communications are received by a quality monitor at Step 720. Communications signatures are analyzed at Step 722 in order to prioritize the communications and send them to their intended destination at steps 724 and 726 respectively. The quality monitor continuously monitors these communications at step 728 and evaluates whether or not service can be improved with either a new communication pathway or coding scheme at step 730. If service may be improved, the necessary change is implemented at step 732. Otherwise, the evaluation process continues at step 728.

In summary, this disclosure provides the ability to incorporate quality monitors either into wireless terminals, wireless access points, or other network modules. These quality monitoring functions monitor, in real-time, the measured and perceived quality of real-time communications. In addition to monitoring these levels of quality, communication pathways and coding schemes may be dynamically reconfigured to improve the measured and perceived level of quality. This has particular applications to VOIP and other like streaming multimedia applications. Such applications enable providers to maintain a high level of user satisfaction while minimizing the impact on network resources. Additionally, quality monitors support dynamic mixed usage of network bandwidth such that voice data and other multimedia communications are prioritized based on their immediate need when compared to other data communications. Thus, the quality monitors support dynamic bandwidth sharing amongst the different types of communications. This ability minimizes network-operating costs and provides real-time communications such as VOIP at quality levels that can reach or exceed traditional telephony levels.

Although the present invention is described in detail, it should be understood that various changes, substitutions and alterations can be made hereto without departing from the spirit and scope of the invention as described by the appended claims. 

1. A Voice over Internet Protocol (VoIP) network interface, comprising: a network interface that communicates with at least one VoIP terminal within a network to service packetized communications; a backbone network interface communicatively coupled to the network interface to service the packetized communications; a processing unit communicatively coupled to the network interface and to the backbone network interface; whereby the processing unit determines a communication signature for each of the packetized communications; and whereby the processing unit determines, based upon a corresponding communication signature, whether a packetized communication is a real-time communication.
 2. The VoIP network interface of claim 1, whereby the processor directs the network interface and the backbone interface to provide a minimal service level to the real-time communication.
 3. The VoIP network interface of claim 2, wherein in providing a minimal service level to the real-time communication, non real-time communications are identified and their service levels are reduced.
 4. The VoIP network interface of claim 2, wherein if the minimum service level to the real-time communication cannot be met, the processor that the real-time communication be rerouted via another servicing network.
 5. The VoIP network interface of claim 1, prioritizes the real-time communication over non real-time communications.
 6. The VoIP network interface of claim 1, wherein each packetized communication has associated therewith a pair of signatures, a receive signature corresponding to communications received from a corresponding VoIP terminal via the network interface and a transmit signature corresponding to communications received via the backbone interface and intended for the corresponding VoIP terminal.
 7. The VoIP network interface of claim 6, whereby the receive signature is primarily employed to determine whether the packetized communication is a real-time communication.
 8. The VoIP network interface of claim 6, receive signature indicates problem with VoIP network interface.
 9. The VoIP network interface of claim 6, transmit signature indicates problem with other links of communication path.
 10. The VoIP network interface of claim 1, the real-time packetized communication is an audio communication.
 11. The VoIP network interface of claim 1, the packetized communications is an audiovisual communication.
 12. The VoIP network interface of claim 11, the audiovisual communication is a video conferencing communication.
 13. A Wireless Local Area Network (WLAN) Access Point (AP), comprising: a wireless interface that communicates with a plurality of wireless terminals on the WLAN to service a plurality of packetized communications; a WLAN backbone network interface communicatively coupled to the wireless interface to service the plurality of packetized communications; a processing unit communicatively coupled to the wireless interface and to the WLAN backbone network interface; whereby the processing unit determines a communication signature for each of the plurality of packetized communications; and whereby the processing unit determines, based upon at least one communication signature, that one of the packetized communications is being affected by a network impediment.
 14. The WLAN Access Point of claim 13, wherein the processing unit is operable to determines the network impediment based on the at least one communication signature.
 15. The WLAN Access Point of claim 14, wherein the processing unit determines the network impediment from a non-uniformity of receipt of the packetized communications from a near-end wireless terminal.
 16. The WLAN Access Point of claim 14, wherein the processing unit determines the network impediment from a non-uniformity of receipt of the packetized communications from a far end terminal.
 17. The WLAN Access Point of claim 14, wherein the processing unit determines the network impediment from a non-linearity of receipt of the packetized communications from a far end terminal.
 18. The WLAN Access Point of claim 14, wherein the processing unit determines the network impediment as being caused by a Wide Area Network servicing the packetized communications from the at least one communication signature of the packetized communications from a far end terminal.
 19. The WLAN Access Point of claim 14, wherein the processing unit identifies the network impediment from an out-of-order receipt of the packetized communications.
 20. The WLAN Access Point of claim 13, wherein each at least each communication signature associated with the packetized communication comprises: a receive signature corresponding to communications received between the plurality of wireless terminals and the wireless interface; and a transmit signature corresponding to communications received from the WLAN backbone network interface and destined for the corresponding wireless terminal.
 21. The WLAN Access Point of claim 20, wherein the processing unit determines if the network impediment resides within a wireless link between the AP and the wireless terminal from the receive signature.
 22. The WLAN Access Point of claim 20, wherein the processing unit identifies network impediments within the WLAN backbone network interface from the transmit signature.
 23. The WLAN Access Point of claim 20, wherein the processing unit identifies network impediments within a WLAN servicing a far end wireless terminal from the transmit signature.
 24. A method of servicing real-time communications from a servicing Wireless Local Area Network (WLAN) Access Point (AP), comprising: receiving outgoing user communications at the AP from a wireless terminal; receiving incoming user communications at the AP for the wireless terminal from a WLAN backbone network interfaced with the AP; selecting an initial coding scheme from a plurality of supported coding schemes with a programmable COder/DECoder (CODEC); converting incoming user communications from packetized communications and outgoing user communications to packetized communications according to the selected coding scheme; and exchanging packetized communications between the servicing AP and the WLAN terminal at a communication quality level; exchanging packetized communications between the servicing AP and the WLAN backbone network at the communication quality level; monitoring the communication quality level between the servicing AP and the WLAN terminal to determine the communication quality level delivered between the AP and WLAN terminal; and revising the selected coding scheme from the plurality of supported coding schemes based upon the communication quality level delivered between the AP and WLAN terminal.
 25. The method of claim 24, further comprising: exchanging packetized communications between the WLAN backbone network and a far end terminal; monitoring a communication quality level between the WLAN backbone network and the far end terminal to determine the communication quality level delivered between the WLAN backbone network and the far end terminal; and revising the selected coding scheme from the plurality of supported coding schemes based upon the communication quality level delivered between the WLAN backbone network and the far end terminal.
 26. The method of claim 24, wherein the supported coding schemes comprise at least one audio and/or video coding scheme selected from the group consisting of Huffman encoding, ITU-T G.711, u-law, A-law, CCITT G.721, CCITT G.723, ITU-T G.726, ITU-T G.723.1, ITU-T G.723.1A, ITU-T G.729, ITU-T G.729A, ITU-T G.729AB, ITU-T G.729E, ITU-T G.728, ITU-T G.722, ITU-T G.722.1, ITU-T G.722.2, GSM-EFR, GSM AMR, IMA/DVI ADPCM, Microsoft ADPCM, LPC-10E, CELP GSM 06.10, shorten, Real Audio, MPEG, ACE and MACE.
 27. The method of claim 24, further comprising monitoring the latency of an incoming jitter buffer and an outgoing jitter buffer to determine the communication quality level between the AP and WLAN terminal, and the communication quality level delivered between the WLAN terminal and the far end terminal.
 28. The method of claim 27, wherein the servicing AP emulates the incoming jitter buffer and the outgoing jitter buffer.
 29. The method of claim 27, wherein nodes located between network segments that couple the servicing AP and the far end terminal are operable to emulate the incoming jitter buffer and the outgoing jitter buffer to determine the communication quality level delivered along network segments between the AP and WLAN terminal.
 30. The method of claim 29, further comprising revising the selected coding scheme based on the communication quality level delivered along network segments between the AP and WLAN terminal.
 31. The method of claim 24, further comprising monitoring communications between a plurality of APs and the wireless terminal; and selecting the servicing AP based upon an expected service quality level between the servicing AP and the wireless terminal.
 32. The method of claim 31, wherein monitoring the plurality of APs further comprises: querying at least one of the plurality of APs to determine the expected service quality level from the AP; and registering with a new servicing AP when the expected service quality level to be provided by the new servicing AP exceeds the expected service quality level provided by the servicing AP by a predetermined service quality level.
 33. The method of claim 32, the user communications are audio communications.
 34. The method of claim 32, the user communications are audiovisual communications.
 35. The method of claim 32, the audiovisual communications are video conferencing communications.
 36. The method of claim 32, wherein the user communications are video communications.
 37. A Wireless Local Area Network (WLAN) Access Point (AP), comprising: a wireless interface that communicates with a plurality of wireless terminals of the WLAN to service a plurality of packetized communications; a WLAN backbone network interface communicatively coupled to the wireless interface to service the plurality of packetized communications; a processing unit communicatively coupled to the wireless interface and to the WLAN backbone network interface; whereby the processing unit determines a communication signature for each of the plurality of packetized communications; and whereby the processing unit determines, based upon a corresponding communication signature, whether a packetized communication is a real-time communication.
 38. The WLAN Access Point of claim 37, whereby the processor directs the wireless interface and the WLAN backbone interface to provide a minimal service level to the real-time communication.
 39. The WLAN Access Point of claim 38, wherein in providing a minimal service level to the real-time communication, non real-time communications are identified and their service levels are reduced.
 40. The WLAN Access Point of claim 38, wherein if the minimum service level to the real-time communication cannot be met, the processor directs at least one other WLAN component to reroute the real-time communication via another servicing network.
 41. The WLAN Access Point of claim 37, prioritizes the real-time communication over non real-time communications.
 42. The WLAN Access Point of claim 37, wherein each packetized communication has associated therewith a pair of signatures, a receive signature corresponding to communications received from a corresponding wireless terminal via the wireless interface and a transmit signature corresponding to communications received via the WLAN backbone interface and intended for the corresponding wireless terminal.
 43. The WLAN Access Point of claim 42, whereby the receive signature is primarily employed to determine whether the packetized communication is a real-time communication.
 44. The WLAN Access Point of claim 42, receive signature indicates problem with wireless link of AP.
 45. The WLAN Access Point of claim 42, transmit signature indicates problem with other portions of communication path.
 46. The WLAN Access Point of claim 37, the real-time packetized communication is an audio communication.
 47. The WLAN Access Point of claim 37, the packetized communications is an audiovisual communication.
 48. The WLAN Access Point of claim 47, the audiovisual communication is a video conferencing communication. 